package com.banmao.algorithm.No201To300.No206;

class ListNode {
    int val;
    ListNode next;
    ListNode() {}
    ListNode(int val) { this.val = val; }
    ListNode(int val, ListNode next) { this.val = val; this.next = next; }
}

public class Solution1 {

    public ListNode reverseList(ListNode head) {

        if(head.next == null) {
            return head;
        }

        // 前一个节点，当前节点，下一个节点
        ListNode pre = null;
        ListNode cur = head;

        // 将当前节点的next指向前一个节点
        while(cur != null) {
            // 留存当前节点的下一个节点
            ListNode tempAfter = cur.next;

            cur.next = pre;
            pre = cur;
            cur = tempAfter;
        }

        return  pre;

    }

}
